package cn.stacey.day11;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Arrays;

import org.junit.Test;

public class DemoChar {
	@Test
	public void test() throws UnsupportedEncodingException {
		//字符型。 每个char变量占一个字节,表示范围为-128到127
//		char c='a';
//		char z='中';
//		System.out.println(z);
		String s="中";
		//getBytes() 是Java编程语言中将一个字符串转化为一个字节数组byte[]的方法。
		//String的getBytes()方法是得到一个系统默认的编码格式的字节数组。
//		System.out.println(Arrays.toString(s.getBytes()));
		//gbk:2个字节
//		System.out.println(Arrays.toString(s.getBytes("gbk")));
		//utf-8:3个字节
//		System.out.println(Arrays.toString(s.getBytes("utf-8")));
//		System.out.println((int)'A');
//		System.out.println((char)256);
//		System.out.println((char)120);
//		System.out.println("A".getBytes("gbk"));
		
	} 
	
	
	@Test
	public void test1() {
		try(FileOutputStream fo=new FileOutputStream("1.txt");
				){
//			fo.write('A');
			//字节流，一次写一个字节，写中文时会丢失信息
			fo.write('中');
			
		}catch(IOException e) {
			e.printStackTrace();
		}
		
	}
	
	@Test
	public void test2() {
		try(	FileInputStream fi=new FileInputStream("1.txt");
				){
			byte[] bytes=new byte[10];
			fi.read(bytes);
			int count=fi.read(bytes);
			System.out.println(count);
		}catch(IOException e){
			e.printStackTrace();
		}
	
	}
}
